package bola8.entes;

import bola8.geometria.Vector2D;
import java.awt.geom.Point2D;

/**
 *
 * @author Jorge Berjano
 */
public interface EnteMovil extends Ente {

    void mover();

    void deshacerMovimiento();

    Colision calcularColision(Ente ente);

    boolean ocupaEspacioComun(Ente ente);

    Vector2D getVelocidad();

    double getMasa();

    Vector2D getFuerzaCinetica();

    void setVelocidad(Vector2D velocidad);

    Point2D getPosicion();

    void setPosicion(Point2D posicion);

    void aplicarFuerza(Vector2D fuerza);

    void ejecutarFuerzas();

    Vector2D calcularFuerzaPlanoInclinado(Ente ente);

    boolean isProcesado();

    void setProcesado(boolean procesado);
}
